package br.com.abelha.manager;

import java.util.Calendar;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.CheckBox;
import android.widget.Spinner;
import br.com.abelha.manager.db.DAOFichaB;
import br.com.abelha.manager.entity.FichaDEnf;
import br.com.abelha.manager.entity.Pessoa;
import java.util.ArrayList;
import java.util.List;

public class FichaEnf extends Activity {


	Spinner procedimentos;
	CheckBox chkpuericultura;
	CheckBox chkprenatal_1_trim;
	CheckBox chkprenatal_2_trim;
	CheckBox chkprenatal_3_trim;
	CheckBox chkprevencao_cancer;
	CheckBox chkdiabetes_diagnostico;
	CheckBox chkdiabetes_acompanhamento;
	CheckBox chk_dst;
	CheckBox chk_aids;
	CheckBox chk_ha;
	CheckBox chk_ham;
	CheckBox chk_tb;
	CheckBox chk_mulher;
	CheckBox chk_puerperio;
	CheckBox chk_consulta_domiciliar;
	CheckBox chk_outros;
	CheckBox chkpneumonia_menor_5;
	CheckBox chk_valvulopatia;
	CheckBox chk_infarto_agudo;
	CheckBox chk_dheg;
	CheckBox chk_doenca_perinatal;
	CheckBox chk_fratura_menor_50;
	CheckBox chk_meningite_tuberculosa;
	CheckBox chk_hanseniase_incapacidade;
	CheckBox chk_citologia;
	
	private int year, month, day;
	
	Pessoa pessoa;

	Button pickDate;
	Button salvar, cancelar;
	private OnClickListener listenerSalvar = new OnClickListener() {
		public void onClick(View v) {
			
			if(!camposNulosENaoPreenchidos()){
				salvarFichaCrianca();
				AlertDialog.Builder builder = new AlertDialog.Builder(FichaEnf.this);
		    	builder.setTitle("PFS");
		    	builder.setMessage("Ficha Enfermagem Salva com sucesso");
		    	builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {  
				      public void onClick(DialogInterface dialog, int which) {  
				       retorneAEscolha();
				    } });
		    	
		    	builder.show();
				
				
			}else{
				exibirMensagem("PFS", "Favor preencher todos os campos");
			}
		}

	};
	private OnClickListener listenerCancelar = new OnClickListener() {
		public void onClick(View v) {
			Intent i = new Intent(FichaEnf.this, MenuFichas.class);
	 		startActivity(i);
		}

	};
	
	public void onCreate(Bundle savedInstanceState) {

		super.onCreate(savedInstanceState);
		setContentView(R.layout.fichadenf);

		
		chkpuericultura = (CheckBox) findViewById(R.id_enf.chkpuericultura);
		chkprenatal_1_trim = (CheckBox) findViewById(R.id_enf.chkprenatal_1_trim);
		chkprenatal_2_trim = (CheckBox) findViewById(R.id_enf.chkprenatal_2_trim);
		chkprenatal_3_trim = (CheckBox) findViewById(R.id_enf.chkprenatal_3_trim);
		chkprevencao_cancer = (CheckBox) findViewById(R.id_enf.chkprevencao_cancer);
		chkdiabetes_diagnostico = (CheckBox) findViewById(R.id_enf.chkdiabetes_diagnostico);
		chkdiabetes_acompanhamento = (CheckBox) findViewById(R.id_enf.chkdiabetes_acompanhamento);
		chk_dst = (CheckBox) findViewById(R.id_enf.chk_dst);
		chk_aids = (CheckBox) findViewById(R.id_enf.chk_ha);
		chk_ha = (CheckBox) findViewById(R.id_enf.chk_ha);
		chk_ham = (CheckBox) findViewById(R.id_enf.chk_ham);
		chk_tb = (CheckBox) findViewById(R.id_enf.chk_tb);		
		chk_mulher = (CheckBox) findViewById(R.id_enf.chk_mulher);
		chk_puerperio = (CheckBox) findViewById(R.id_enf.chk_puerperio);
		chk_consulta_domiciliar = (CheckBox) findViewById(R.id_enf.chk_consulta_domiciliar);
		chk_outros = (CheckBox) findViewById(R.id_enf.chk_outros);
		chkpneumonia_menor_5 = (CheckBox) findViewById(R.id_enf.chkpneumonia_menor_5);
		chk_valvulopatia = (CheckBox) findViewById(R.id_enf.chk_valvulopatia);
		chk_infarto_agudo = (CheckBox) findViewById(R.id_enf.chk_infarto_agudo);
		chk_dheg = (CheckBox) findViewById(R.id_enf.chk_dheg);
		chk_doenca_perinatal = (CheckBox) findViewById(R.id_enf.chk_doenca_perinatal);
		chk_fratura_menor_50 = (CheckBox) findViewById(R.id_enf.chk_fratura_menor_50);
		chk_meningite_tuberculosa = (CheckBox) findViewById(R.id_enf.chk_meningite_tuberculosa);
		chk_hanseniase_incapacidade = (CheckBox) findViewById(R.id_enf.chk_hanseniase_incapacidade);
		chk_citologia = (CheckBox) findViewById(R.id_enf.chk_citologia);
		
		  // Spinner Causa
		procedimentos = (Spinner) findViewById(R.id_enf.spinner_procedimentos);
		ArrayAdapter proc = new ArrayAdapter(this, android.R.layout.simple_spinner_dropdown_item, 
				  new String[] {"Curativo", "Atendimento", "Outros atendimentos"});
		procedimentos.setAdapter(proc);

		final Calendar cal = Calendar.getInstance();
		year = cal.get(Calendar.YEAR);
		month = cal.get(Calendar.MONTH);
		day = cal.get(Calendar.DAY_OF_MONTH);
		
/*		dataConsulta.setText(new StringBuilder().append(day).append('-')
				.append(month + 1).append('-').append(year));*/
		
		salvar = (Button) findViewById(R.id.Button_Save);
		cancelar = (Button) findViewById(R.id.Button_Cancelar);

		salvar.setOnClickListener(listenerSalvar);
		cancelar.setOnClickListener(listenerCancelar);

		pickDate = (Button) findViewById(R.id.id_date_consulta_button);
		pickDate.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				showDialog(1);
			}

		});

	}
	
	public boolean camposNulosENaoPreenchidos(){
		
		return false; 

	}
	
	protected void retorneAEscolha() {
		Intent i = new Intent(FichaEnf.this, MenuFichas.class);
 		startActivity(i);
		
	}

	public void exibirMensagem(String titulo, String mensagem){
		AlertDialog.Builder builder = new AlertDialog.Builder(this);
    	builder.setTitle(titulo);
    	builder.setMessage(mensagem);
    	builder.setNeutralButton("OK", null);
    	builder.show();
	}

	protected void salvarFichaCrianca() {

		DAOFichaB<FichaDEnf> daoFichaB = new DAOFichaB<FichaDEnf>(this);
		FichaDEnf FichaDEnf = new FichaDEnf();
		
		try {
			
			FichaDEnf.setId_fichaA(pessoa.getId_fichaA());
			FichaDEnf.setId_paciente(pessoa.getId());
			
			if(chkpuericultura.isChecked()){
				FichaDEnf.setPuericultura(1);
			}
			if(chkprenatal_1_trim.isChecked()){
					FichaDEnf.setPre_natal1(1);
			}
			if(chkprenatal_2_trim.isChecked()){
					FichaDEnf.setPre_natal2(1);
			}
			if(chkprenatal_3_trim.isChecked()){
					FichaDEnf.setPre_natal3(1);
			}
			if(chk_dst.isChecked()){
					FichaDEnf.setDst(1);
			}
			if(chk_aids.isChecked()){
					FichaDEnf.setAids(1);
			}		
			if(chk_ha.isChecked()){
					FichaDEnf.setHipertensao_arterial(1);
			}
			if(chk_ham.isChecked()){
					FichaDEnf.setHanseniase(1);
			}

			if(chk_tb.isChecked()){
				FichaDEnf.setTuberculose(1);
			}
			
			if(chk_mulher.isChecked()){
					FichaDEnf.setMulher(1);
			}
			if(chk_puerperio.isChecked()){
					FichaDEnf.setPuerperio(1);
			}
			if(chk_consulta_domiciliar.isChecked()){
					FichaDEnf.setConsulta_domiciliar(1);
			}
			if(chk_outros.isChecked()){
					FichaDEnf.setOutros_tipos(1);
			}
			if(chkpneumonia_menor_5.isChecked()){
				FichaDEnf.setPneumonia_menor5(1);
			}	
			if(chk_valvulopatia.isChecked()){
				FichaDEnf.setValvulopatia_reum(1);
			}
			if(chk_infarto_agudo.isChecked()){
				FichaDEnf.setInfarto_agudo(1);
			}
			if(chk_dheg.isChecked()){
				FichaDEnf.setDheg(1);
			}
			if(chk_doenca_perinatal.isChecked()){
				FichaDEnf.setDoenca_perinatal(1);
			}
			if(chk_fratura_menor_50.isChecked()){
				FichaDEnf.setFratura_femur_50(1);
			}
			if(chk_meningite_tuberculosa.isChecked()){
				FichaDEnf.setMeningite_tuberculosa(1);
			}
			if(chk_outros.isChecked()){
				FichaDEnf.setOutros_tipos(1);										
			}					
			if(chk_hanseniase_incapacidade.isChecked()){
				FichaDEnf.setHanseniase_incapac(1);
			}
			if(chk_citologia.isChecked()){
				FichaDEnf.setCitologia_onc(1);
			}

				daoFichaB.delete(FichaDEnf);
				daoFichaB.insert(FichaDEnf);
			
				
				
			} catch (Throwable e) {
				e.printStackTrace();
			}
			
			
		}

	protected Dialog onCreateDialog(int id) {
		switch (id) {
		case 1:
			return new DatePickerDialog(this, dateListener, year, month, day);

		}
		return null;

	}

	private DatePickerDialog.OnDateSetListener dateListener = new DatePickerDialog.OnDateSetListener() {

		@Override
		public void onDateSet(DatePicker view, int yr, int monthOfYear,
				int dayOfMonth) {
			year = yr;
			month = monthOfYear;
			day = dayOfMonth;
			//updateDate();
		}
	};

/*	private void updateDate() {
		dataConsulta.setText(new StringBuilder().append(day).append('-')
				.append(month + 1).append('-').append(year));

	}*/
	
}
